<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>p2_CSS选择器</title>
    <style>
        /* 标签名选择器*/
        h4 {
            color: red;
        }
        div {
            width: 100px;
            height: 100px;
            background-color: yellow;
        }
        /*id 选择器*/
        #d2 {
            border: 5px solid red;
        }
        /*类名选择器*/
        .error {
            background-color: red;
        }
        .success {
            background-color: green;
        }
        .msg {
            color: white;
        }
        /* 群组选择器
        用逗号隔开 ，是逻辑或关系，只要满足一个就选中*/
        #d2,h4,.error {
            text-decoration: underline;
        }
        /* 通配选择器: 匹配所有元素 */
        * {
            font-style: inherit;
        }
        /* 属性选择器 */
        [type="text"] {
            background-color: yellow;
        }
        /* 伪类选择器 */
        /* 并列选择器 ：*/
        a:link {/* 选中超链接未访问过的状态*/
            color: gray;
        }
        a:visited {/* 选中超链接已访问过的状态*/
            color: green;
        }
        a:hover {/* 选中超链接处于悬停状态*/
            color: orange;
        }
        a:active {/* 选中超链接处于激活状态*/
            color: red;
        }
        /* 后代选择器 */
        #d1 span {
            color: cyan;
        }
        /* 直接子选择器 ： */
        #d1>div>span {
            color: red;
        }
        /* :hover 悬停不是超链接独有的选择器*/
        #d3:hover {
            background-color: purple;
        }
        div>span{
            background-color: black;
        }

    </style>
</head>
<body>
    <div id="d1">
        <span>1</span>
        <div>
            <span>2</span>
            <p>测试文字</p>
            <p>我是<span>测试</span>段落</p>
        </div>
        <span>3</span>
    </div>
    <a href="https://www.baidu.com">超链接1</a>
    <a href="abc">超链接2</a>
    <h4>我是标题</h4>
    <p>我是段落</p>
    <a href="#"> 我是超链接</a>
    <h4 id="d2">我是标题2</h4>
    <div>我是div1</div>
    <div>我是div2</div>
    <div id="d3">我是div3</div>
    <hr>
    <span class="error msg"> 用户名已被占用</span><br>
    <span class="error msg">密码长度不正确</span><br>
    <span class="error msg">两次密码不一致</span><br>
    <hr>
    <span class="success msg">用户名格式正确</span><br>
    <span class="success msg">手机号格式正确</span><br>
    <span class="success msg">邮箱名格式正确</span><br>

    <input type="text">
    <input type="password">


</body>
</html>